 /* CSS Variables - Consistent Design System */
 :root {
     --primary-color: #007bff;
     --secondary-color: #6c757d;
     --success-color: #25D366;
     --background-light: #f8f9fa;
     --text-dark: #212529;
     --text-muted: #6c757d;
     --spacing-xs: 0.5rem;
     --spacing-sm: 1rem;
     --spacing-md: 2rem;
     --spacing-lg: 3rem;
     --border-radius: 8px;
     --box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
 }

 /* Reset and Base Styles */
 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Nunito Sans', sans-serif;
     font-size: 16px;
     line-height: 1.5;
     color: var(--text-dark);
     background-color: white;
 }

 h1,
 h2,
 h3,
 h4 {
     font-family: 'Poppins', sans-serif;
     font-weight: 600;
     line-height: 1.2;
     margin-bottom: var(--spacing-sm);
 }

 h1 {
     font-size: 2.5rem;
     font-weight: 700;
 }

 h2 {
     font-size: 2rem;
     margin-bottom: var(--spacing-md);
 }

 h3 {
     font-size: 1.5rem;
 }

 p {
     margin-bottom: var(--spacing-sm);
     color: var(--text-muted);
 }

 .container {
     width: 100%;
     max-width: 1200px;
     margin: 0 auto;
     padding: 0 var(--spacing-sm);
 }

 section {
     padding: var(--spacing-lg) 0;
 }

 .bg-light {
     background-color: var(--background-light);
 }

 /* Button Styles */
 .btn {
     display: inline-block;
     padding: 12px 28px;
     border-radius: var(--border-radius);
     text-decoration: none;
     font-weight: 500;
     font-size: 1rem;
     cursor: pointer;
     border: none;
     transition: all 0.3s ease;
     text-align: center;
     font-family: 'Poppins', sans-serif;
 }

 .btn-success {
     background-color: var(--success-color);
     color: white;
 }

 .btn-success:hover {
     background-color: #1da851;
     transform: translateY(-2px);
     box-shadow: 0 6px 12px rgba(37, 211, 102, 0.25);
 }

 .btn-lg {
     padding: 16px 36px;
     font-size: 1.1rem;
     font-weight: 600;
 }

 /* Hero Section */
 .hero {
     text-align: center;
     padding-top: var(--spacing-lg);
     padding-bottom: var(--spacing-lg);
     background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
 }

 .hero h1 {
     margin-bottom: var(--spacing-sm);
     color: var(--text-dark);
 }

 .hero-subtitle {
     font-size: 1.25rem;
     color: var(--primary-color);
     font-weight: 500;
     margin-bottom: var(--spacing-md);
 }

 .highlights {
     display: flex;
     justify-content: center;
     gap: var(--spacing-md);
     flex-wrap: wrap;
     margin-bottom: var(--spacing-lg);
 }

 .highlight-item {
     background: white;
     padding: var(--spacing-sm) var(--spacing-md);
     border-radius: var(--border-radius);
     box-shadow: var(--box-shadow);
     min-width: 180px;
 }

 .highlight-icon {
     color: var(--primary-color);
     font-weight: bold;
     margin-right: var(--spacing-xs);
 }

 /* Course Overview */
 .overview {
     text-align: center;
 }

 .overview p {
     max-width: 900px;
     margin: 0 auto var(--spacing-sm);
     font-size: 1.1rem;
 }

 /* What You Will Learn */
 .learning-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
     gap: var(--spacing-sm);
     margin-top: var(--spacing-md);
 }

 .learning-item {
     background: white;
     padding: var(--spacing-sm);
     border-radius: var(--border-radius);
     display: flex;
     align-items: flex-start;
 }

 .learning-icon {
     color: var(--primary-color);
     margin-right: var(--spacing-sm);
     font-weight: bold;
     flex-shrink: 0;
 }

 /* Curriculum Modules */
 .curriculum-container {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
     gap: var(--spacing-md);
     margin-top: var(--spacing-md);
 }

 .module-card {
     background: white;
     padding: var(--spacing-md);
     border-radius: var(--border-radius);
     box-shadow: var(--box-shadow);
     height: 100%;
 }

 .module-number {
     display: inline-block;
     background-color: var(--primary-color);
     color: white;
     width: 36px;
     height: 36px;
     border-radius: 50%;
     text-align: center;
     line-height: 36px;
     font-weight: 600;
     margin-bottom: var(--spacing-sm);
 }

 /* Tools & Technologies */
 .tools-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
     gap: var(--spacing-md);
     margin-top: var(--spacing-md);
 }

 .tool-card {
     background: white;
     padding: var(--spacing-md);
     border-radius: var(--border-radius);
     box-shadow: var(--box-shadow);
     text-align: center;
     transition: transform 0.3s ease;
 }

 .tool-card:hover {
     transform: translateY(-5px);
 }

 .tool-icon {
     font-size: 2.5rem;
     color: var(--primary-color);
     margin-bottom: var(--spacing-sm);
 }

 /* Who Should Join */
 .audience-container {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
     gap: var(--spacing-md);
     margin-top: var(--spacing-md);
 }

 .audience-card {
     background: white;
     padding: var(--spacing-md);
     border-radius: var(--border-radius);
     box-shadow: var(--box-shadow);
     text-align: center;
 }

 .audience-icon {
     font-size: 2.5rem;
     color: var(--primary-color);
     margin-bottom: var(--spacing-sm);
 }

 /* Career Opportunities */
 .career-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
     gap: var(--spacing-md);
     margin-top: var(--spacing-md);
 }

 .career-card {
     background: white;
     padding: var(--spacing-md);
     border-radius: var(--border-radius);
     box-shadow: var(--box-shadow);
     border-top: 4px solid var(--primary-color);
 }

 .industry-list {
     margin-top: var(--spacing-md);
 }

 .industry-list li {
     margin-bottom: var(--spacing-xs);
     display: flex;
     align-items: flex-start;
 }

 /* Placement Support */
 .placement-grid {
     display: grid;
     grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
     gap: var(--spacing-md);
     margin-top: var(--spacing-md);
 }

 .support-item {
     background: white;
     padding: var(--spacing-md);
     border-radius: var(--border-radius);
     box-shadow: var(--box-shadow);
     display: flex;
     align-items: flex-start;
 }

 .support-icon {
     color: var(--success-color);
     margin-right: var(--spacing-sm);
     font-weight: bold;
     flex-shrink: 0;
 }

 /* Final CTA */
 .final-cta {
     text-align: center;
 }

 .final-cta h2 {
     margin-bottom: var(--spacing-sm);
 }

 .final-cta p {
     max-width: 600px;
     margin: 0 auto var(--spacing-md);
     font-size: 1.1rem;
 }

 /* Responsive Design */
 @media (max-width: 768px) {
     h1 {
         font-size: 2rem;
     }

     h2 {
         font-size: 1.75rem;
     }

     section {
         padding: var(--spacing-md) 0;
     }

     .highlights {
         flex-direction: column;
         align-items: center;
     }

     .highlight-item {
         width: 100%;
         max-width: 300px;
     }

     .learning-grid,
     .curriculum-container,
     .tools-grid,
     .audience-container,
     .career-grid,
     .placement-grid {
         grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
     }

     .btn-lg {
         padding: 14px 28px;
         font-size: 1rem;
     }
 }

 @media (max-width: 480px) {
     h1 {
         font-size: 1.75rem;
     }

     h2 {
         font-size: 1.5rem;
     }

     .hero-subtitle {
         font-size: 1.1rem;
     }

     .learning-grid,
     .curriculum-container,
     .tools-grid,
     .audience-container,
     .career-grid,
     .placement-grid {
         grid-template-columns: 1fr;
     }
 }

 /* List Styles */
 ul {
     padding-left: var(--spacing-md);
     margin-bottom: var(--spacing-sm);
 }

 li {
     margin-bottom: var(--spacing-xs);
     color: var(--text-muted);
 }

 .tech-list {
     display: flex;
     flex-wrap: wrap;
     gap: var(--spacing-sm);
     list-style: none;
     padding: 0;
 }

 .tech-list li {
     background: var(--background-light);
     padding: var(--spacing-xs) var(--spacing-sm);
     border-radius: var(--border-radius);
     border: 1px solid #dee2e6;
 }